metrics <-function(prediction,vrai){
conf_matrix<- table(prediction ,vrai)
# Calculating performance metrics
TP <- conf_matrix[2, 2]
TN <- conf_matrix[1, 1]
FP <- conf_matrix[2, 1]
FN <- conf_matrix[1, 2]
precision <- TP / (TP + FP)
recall <- TP / (TP + FN)
accuracy <- (TP + TN) / sum(conf_matrix)
F1 <- 2 * (precision * recall) / (precision + recall)
sensitivity <- recall
specificity <- TN / (TN + FP)
negative_predictive_value <- TN / (TN + FN)
return( data.frame(
Precision = precision,
Recall = recall,
Accuracy = accuracy,
F1 = F1,
Sensitivity = sensitivity,
Specificity = specificity,
NPV = negative_predictive_value))
}